1. Technical Field
The present invention relates generally to communication systems; and more particularly to the compression and decompression of data within communication systems.
2. Related Art
The structure and operation of communication systems is generally known. Examples of such communication systems include the Public Switched Telephone Network (PSTN), wireless cellular systems, wireless satellite systems, packet switched networks such as the Internet and Asynchronous Transfer Mode (ATM) networks and Local Area Networks (LANs) among other communication systems. Early communication systems, such as the PSTN and analog wireless cellular systems originally serviced only voice communications. However, as the use of digital computers has advanced, these communication systems have been called upon to support both voice communications and data communications.
When wired communication systems were first called upon to carry digital data, modems were employed to modulate and demodulate the digital data upon an analog carrier signal. In these data communications, a first modem that coupled to a first computer communicated with a second modem that coupled to a second computer. The first modem coupled to the second modem via the wired communication system. This setup served to pass data communications between the computers and functioned adequately for early data communications. However, as the data rate (bits per second "bps") required for the data communications increased, shortcomings in the wired communication systems became evident.
The wired communication systems were initially designed to carry only voice communications. These voice communications required a bandwidth of approximately 8 khz which served as a design bandwidth for early communication systems, both wired and wireless. While many portions of modern communications now employ modern components and links having a greater bandwidth, legacy components remain. In particular, most present-day wired communication systems employ an analog communication link to couple telephones (and computer modems) to a central office. While this analog communication link provides more than adequate performance for voice communications, it presents a significant limitation for data communications passing thereupon. The analog communication link supports data communications at a maximum data rate of between 14 kbps and 33 kbps, and, in an exceptional case, 56 kpbs. Wireless links within wireless communication systems introduce similar bandwidth limitations.
While other portions of the communication systems now operate digitally and may provide greater bandwidth, the analog link from the modem to the local office of the telephone company is still commonly used to transmit data and comprises a weakest link. In a common data operation, a computer user employs his or her modem to dial-up an Internet Service Provider (ISP) to establish an Internet session. The computer user couples to his or her ISP via the analog link from his or her computer to the local office of the phone company. During this Internet session, the analog link serves to limit the available bandwidth for the Internet session. Resultantly, data transmissions are relatively slow and are often unreliable due to the properties of the analog link.
To overcome the bandwidth limitations of the analog link(s) in data communications, various techniques have been introduced. One such technique involves the local caching of data that may be downloaded multiple times. Such a technique is often used by browser software employed in Internet sessions. Other techniques involve the encoding/decoding and compression/decompression of data across the analog link(s). The success of these techniques, however, depends greatly upon the type of data being encoded/decoded or compressed/decompressed. For example, some character sets lend themselves to forms of compression/decompression that noticeably enhance apparent bandwidth provided by the analog link. However, for binary data, such compression/decompression and encoding/decoding techniques provide a lesser benefit.
Other techniques employed convert the analog link to another type of link. An example of this conversion is the Integrated Services Digital Network (ISDN) service that may be established between the local office and a computer user. However, the ISDN service requires additional hardware resources, is expensive to install and operate, and still provides a relatively low bandwidth (64 kbps/data channel). Another example of such a conversion of the data link is the Asynchronous Digital Subscriber Line (ADSL) service. Unfortunately, ADSL service suffers similar shortcomings. Moreover, the ISDN service and the ADSL service are provided only in limited geographic areas and cannot be provided over much existing copper wiring that services the analog links.
Thus, there exists a need in the art for a technique to increase the throughput of a communication links when the communication links are used to carry binary data.